Marcel dostał w tym roku na urodziny talię bardzo specyficznych kart. Nie służą one do gry, lecz do budowania domków z kart. Zaraz po rozpakowaniu prezentu niecierpliwy Marcel zbudował ogromną wieżę. Zrobił to w następujący sposób: w pierwszej kolejności opierał karty parami o siebie, następnie na powstałych szczytach stawiał kolejne karty, znów opierając je parami o siebie, i tak dalej. Okazało się, że na każdym piętrze, poza ostatnim, liczba szczytów była parzysta, więc zawsze dało się poprawnie zbudować wyższe piętro.
  Każda z kart w talii ma swoją wartość.
  Teraz Marcel żałuje, że nie przemyślał lepiej swojej konstrukcji
  i zużył zbyt dużo wartościowych kart. Znając wartość każdej karty,
  chciałby zdjąć nie więcej niż 
 kart z wieży tak, aby suma ich wartości
  była jak największa. Oczywiście domek z kart nie może się przy tym zawalić!
Aby po wyjęciu kart domek nadal był stabilny, Marcel nie może nigdy zdjąć pojedynczej karty, nie wyjmując zarazem jej pary (tzn. tej karty, z którą nawzajem się podpierają). Ponadto nigdy nie może zdjąć karty, nie zdjąwszy wcześniej wszystkich kart, które są wyżej od niej i pośrednio lub bezpośrednio są o nią oparte.
    W pierwszym wierszu standardowego wejścia znajdują się dwie liczby
    całkowite 
 i 
, 
, 
,
    oznaczające odpowiednio liczbę pięter karcianej wieży i maksymalną liczbę
    kart, które Marcel może zdjąć.
    Ponieważ karty można zdejmować tylko w parach, to 
 będzie zawsze parzyste.
    Kolejne 
 wierszy wejścia zawiera opisy poszczególnych pięter wieży
    od najwyższego do najniższego. W 
-szym wierszu znajduje się 
    liczb całkowitych 
, 
, ..., 
    (
),
    oznaczających wartości kart na 
-tym piętrze od góry, w
    kolejności od lewej do prawej.
    W testach wartych łącznie 50% punktów zachodzą dodatkowe ograniczenia:
    
, 
.
    Twój program powinien wypisać na standardowe wyjście dokładnie jedną liczbę całkowitą
    - maksymalną sumę wartości kart,
    jaką Marcel może odzyskać, wyjmując maksymalnie 
 kart z wieży, tak aby ta się nie zawaliła.
Dla danych wejściowych:
3 6 1 -3 -10 1 2 1 1 1 3 2 -1 5 2 -3
poprawną odpowiedzią jest:
5

    Karty, które Marcel powinien wyjąć z wieży, zostały zaznaczone na rysunku
    liniami przerywanymi.
    Mają one wartości: 
, 
, 
, 
, 
, 
, a więc suma ich wartości to 
.	
Autor zadania: Michał Włodarczyk.
In the event of technical difficulties with Szkopuł, please contact us via email at [email protected].
If you would like to talk about tasks, solutions or technical problems, please visit our Discord servers. They are moderated by the community, but members of the support team are also active there.